//
// Created by 32827 on 2023/11/27.
//

/**
 * 管理传输控制
 * */
#ifndef YZFRAME_YZ_RECV_TRANSMIT_H
#define YZFRAME_YZ_RECV_TRANSMIT_H
#include "yz.h"
#include "yz_uart.h"

#define YZ_RECV_TRANSMIT_HANDLER_SHEET_SIZE 256
/**
 * Channel 解释
 * 目前支持传入USART1 USART2
 * */
//设置接收通道
YZF_RESULT yz_recv_transmit_channel(void *channel);
//重置句柄状态，回到原始句柄
YZF_RESULT yz_recv_transmit_reset();
//句柄是否在原始句柄
YZF_BOOL yz_recv_transmit_isReset();
//初始化协议
YZF_RESULT yz_recv_transmit_init(void *channel);
//句柄转发句柄（原始句柄）
YZF_RESULT yz_recv_transmit_handler_process();
//接收区域获取
YZF_RECV * yz_recv_transmit_area_get();
//一次连续地址最多可发送几个
YZF_RECV_DATA_INDEX yz_recv_transmit_once_line_most();
//设置句柄对应的回调函数
YZF_RESULT yz_recv_transmit_handler_set(YZF_GLOBAL_INDEX handlerCode,YZF_RESULT (*process)());
#endif //YZFRAME_YZ_RECV_TRANSMIT_H
